package algorithm;

public class MTestCase {
	private AlgorithmStrategy strategy;
	private String methodName;
	private String filePath;
	private MParameter[] paraList;
	private String description;
	private String sty;
	
	public MTestCase() {
		strategy=new RandomStrategy("","",10,null);
		methodName="";
		filePath="";
		description="";
		sty="Random";
	}
	
	public String getDescription() {
		return description;
	}
	public void setDescription(String description) {
		this.description = description;
	}
	public AlgorithmStrategy getStrategy() {
		return strategy;
	}
	public String getStrategyByString() {
		return sty;
	}
	public void setStrategy(AlgorithmStrategy strategy) {
		//get type
		this.strategy = strategy;
	}
	public void setStrategy(String sty) {
		if(sty.equals("Random")) 
			strategy = new RandomStrategy("","",10,null);
		else if (sty.equals("AdaptiveRandom"))
			strategy = new AdaptiveRandomStrategy("","",10,null);
	}
	public String getMethodName() {
		return methodName;
	}
	public void setMethodName(String methodName) {
		this.methodName = methodName;
	}
	public String getFilePath() {
		return filePath;
	}
	public void setFilePath(String filePath) {
		this.filePath = filePath;
	}
	public MParameter[] getParaList() {
		return paraList;
	}
	public void setParaList(MParameter[] paraList) {
		this.paraList = paraList;
	}
	public Object[] getResultList() {
		return strategy.getMethodResult();
	}
	/*
	public void setResultList(Object[] resultList) {
		this.resultList = resultList;
	}
	*/

}
